Data in computer networks is often transmitted as a flow or stream of data (a “data stream” or simply “stream”) from a source device to one more destination devices (or “sinks”). In many cases, the source device is aware of resources that may be required by the stream, such as a general maximum amount of bandwidth (e.g., in megabytes per second or “MBps”), which if the stream is not irregular, may be substantially used most of the time the stream is being transmitted. Congestion may occur in a network when there is more traffic (data) traversing network devices than those devices can handle. For instance, due to “fan-in,” where multiple input ports of a device receive traffic destined out a same single port of the device, that single port may have to drop or otherwise shape traffic. For example, if a device has twenty-five ports that can support 100 MBps, and twenty-four of those ports receive 5 MBps of traffic to be transmitted out the twenty-fifth port at the same time, the twenty-fifth port has insufficient resources for the traffic flows of all twenty-four incoming ports (i.e., 5 MBps time twenty-four is 120 MBps, 20 MBps more than the twenty-fifth port can sustain).
Various protocols are in place today that allow network devices to reserve or allocate network resources (e.g., bandwidth) for a data stream along a path. For instance, the Resource reSerVation Protocol (RSVP) is one known protocol (e.g., IETF RFCs 2205 and 2750) that operates on Layer-3 devices (e.g., routers) that may be used to reserve bandwidth along a path (Layer-3 being in accordance with the known Open Systems Interconnection (OSI) Reference Model). For example, if one router has ports capable of supporting 100 MBps, a first stream requesting 60 MBps will be allowed to reserve 60 MBps of the 100 MBps on that port, thus ensuring that the stream has sufficient bandwidth. If another stream attempts to reserve 60 MBps on that same port, RSVP will reject the reservation attempt, since only 40 MBps remain unallocated on that port.
As noted, however, RSVP operates on Layer-3 devices, e.g., routers. Layer-2 networks with Layer-2 devices (e.g., bridges/switches, thus “bridged networks”) on the other hand, do not operate according to Layer-3 protocols, and thus cannot use RSVP. In addition, due to certain differences between Layer-2 and Layer-3 operation, RSVP may be ill-suited for use in Layer-2, not having been designed based on the operating procedures and implementation functionality of Layer-2.